Apex REST Web Services হলো Salesforce-এ তৈরি করা RESTful API, যা Salesforce ডেটা এবং লজিক্যাল রিসোর্সকে বাহ্যিক সিস্টেমের সাথে শেয়ার করতে ব্যবহৃত হয়। Apex REST Web Services ব্যবহার করে Salesforce ডেটা এক্সটার্নাল অ্যাপ্লিকেশনের সাথে সহজেই শেয়ার করা যায় এবং বাহ্যিক অ্যাপ্লিকেশন থেকে Salesforce-এর বিভিন্ন রিসোর্স অ্যাক্সেস করা যায়। Salesforce-এ Apex REST API নির্মাণের জন্য @RestResource অ্যানোটেশন ব্যবহার করা হয়, যা নির্দিষ্ট রিসোর্স URL বা API এন্ডপয়েন্ট তৈরি করে।
Apex REST Web Services এর মাধ্যমে Salesforce এ REST API তৈরি করা সম্ভব হয়, যা অন্যান্য অ্যাপ্লিকেশন বা পরিষেবা সহজে Salesforce ডেটা এবং লজিক ব্যবহার করতে পারে। Apex REST API বিভিন্ন HTTP মেথড যেমন GET, POST, PUT, DELETE ইত্যাদি ব্যবহার করে কাজ করে। Apex ক্লাসে @RestResource অ্যানোটেশন এবং নির্দিষ্ট মেথডের জন্য @HttpGet, @HttpPost, @HttpPut, এবং @HttpDelete অ্যানোটেশন ব্যবহার করে RESTful মেথড তৈরি করা হয়।
নিচে একটি সাধারণ উদাহরণ দেয়া হলো, যেখানে Apex REST Web Service তৈরি করা হয়েছে, যা Account রেকর্ডের তথ্য রিটার্ন, ক্রিয়েট, আপডেট, এবং ডিলিট করার কাজ করে।
@RestResource(urlMapping='/AccountService/*')
global with sharing class AccountService {
// HTTP GET Method: নির্দিষ্ট Account রেকর্ড রিটার্ন করে
@HttpGet
global static Account getAccountById() {
RestRequest req = RestContext.request;
String accountId = req.requestURI.substring(req.requestURI.lastIndexOf('/')+1);
Account acc = [SELECT Id, Name, Industry FROM Account WHERE Id = :accountId LIMIT 1];
return acc;
}
// HTTP POST Method: নতুন Account রেকর্ড তৈরি করে
@HttpPost
global static String createAccount(String name, String industry) {
Account acc = new Account(Name = name, Industry = industry);
insert acc;
return acc.Id;
}
// HTTP PUT Method: Account রেকর্ড আপডেট করে
@HttpPut
global static String updateAccount(String accountId, String name, String industry) {
Account acc = [SELECT Id FROM Account WHERE Id = :accountId LIMIT 1];
acc.Name = name;
acc.Industry = industry;
update acc;
return 'Account updated successfully';
}
// HTTP DELETE Method: নির্দিষ্ট Account রেকর্ড ডিলিট করে
@HttpDelete
global static String deleteAccount(String accountId) {
Account acc = [SELECT Id FROM Account WHERE Id = :accountId LIMIT 1];
delete acc;
return 'Account deleted successfully';
}
}
AccountService
নামে তৈরি করা হয়েছে, যা বাহ্যিক সিস্টেম থেকে এক্সেস করা যায়।getAccountById
মেথড HTTP GET রিকোয়েস্টে Account রেকর্ড রিটার্ন করে।createAccount
মেথড HTTP POST রিকোয়েস্টে নতুন Account রেকর্ড তৈরি করে।updateAccount
মেথড HTTP PUT রিকোয়েস্টে Account রেকর্ড আপডেট করে।deleteAccount
মেথড HTTP DELETE রিকোয়েস্টে Account রেকর্ড ডিলিট করে।@RestResource
দিয়ে নির্দিষ্ট URL বা API Endpoint তৈরি করা হয়, যা বাহ্যিক অ্যাপ্লিকেশনকে Salesforce ডেটা বা লজিক এক্সেস করতে সহায়তা করে।global
অ্যাক্সেস মডিফায়ার ব্যবহার করতে হয়, যাতে বাহ্যিক সিস্টেম এই মেথডগুলো অ্যাক্সেস করতে পারে।Apex REST Web Services Salesforce-এ RESTful API তৈরি করতে ব্যবহৃত হয়, যা বাহ্যিক সিস্টেমের সাথে সহজে Salesforce ডেটা এবং লজিক শেয়ার করতে সহায়ক। Apex REST Web Services বিভিন্ন HTTP মেথড যেমন GET, POST, PUT, DELETE সাপোর্ট করে এবং JSON ফরম্যাটে ডেটা এক্সচেঞ্জ করে, যা অন্য সিস্টেমের সাথে এক্সচেঞ্জিং ডেটা সহজ করে তোলে। Salesforce ডেভেলপমেন্টে Apex REST Web Services গুরুত্বপূর্ণ ভূমিকা পালন করে এবং এক্সটার্নাল অ্যাপ্লিকেশনের সাথে দ্রুত ও কার্যকর সংযোগ স্থাপন করতে সহায়ক।
common.read_more